package Day02;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;

/**
 * Creat with IntelliJ IDEA
 * Description
 * User: mamba24
 * Date: 2022-09-06
 * Time: 22:50
 * To BE A Better Person-2020-3-2
 */

public class TesDemo2 {
    public static void move(int[] nums,int index){
        for(int i=index;i+1<nums.length;i++){
            nums[i]=nums[i+1];
        }
        nums[nums.length-1]=0;
    }
    public static int removeElement(int[] nums, int val) {
        int len=nums.length;
        for(int i=0;i<nums.length;i++){
            while(nums[i]==val){
                move(nums,i);
                len--;
            }
        }
        return len;

    }

    public static void main(String[] args){
        String s1="abc";
        String s2="bca";
        Boolean ret=CheckPermutation(s1,s2);
        System.out.println(ret);
        ArrayList<Integer> arr=new ArrayList<>();

    }
    public static boolean CheckPermutation(String s1, String s2) {
        // if(s1.length()!=s2.length()) return false;
        // Set<Character> set=new HashSet<>();
        // //将s1全部放入set中
        // for(int i=0;i<s1.length();i++){
        //     set.add(s1.charAt(i));
        // }
        // for(int i=0;i<s1.length();i++){
        //     if(set.add(s2.charAt(i))==false){
        //         continue;
        //     }else{
        //         return false;
        //     }
        // }
        // return true;
        if(s1.length()!=s2.length()) return false;
        HashMap<Character,Integer> map=new HashMap<>();
        for(int i=0;i<s1.length();i++){
            int val=map.getOrDefault(s1.charAt(i),0);
            val+=1;
            map.put(s1.charAt(i),val);
        }
        for(int i=0;i<s2.length();i++){
            if(map.getOrDefault(s2.charAt(i),0)==0){
                return false;
            }else{
                int val=map.get(s2.charAt(i));
                val-=1;
                map.put(s2.charAt(i),val);
            }
        }
        return true;

    }
}
